package trombinoscope.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.*;
import java.util.ArrayList;
import javax.servlet.ServletContext;
import trombinoscope.modele.Etudiant;
import trombinoscope.modele.Groupe;
import trombinoscope.modele.GroupeDAO;

/**
 *
 * @author jef
 */
public class servletTrombi extends HttpServlet {

    public void processRequest(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
    {
        try 
        {
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
        
            String idGroupe = request.getParameter("idgroupe");
            //boolean isAdminUser = request.getParameter("adminUser");
           
            boolean statut = (Boolean)getServletContext().getAttribute("adminUser"); // récupération du statut
            
            Integer idGroupeInt = Integer.parseInt(idGroupe);            
            Groupe groupeConcerne = GroupeDAO.getGroupeByIdGroupe(idGroupeInt);
            
            // affichage de la liste des étudiants correspondant à la promotion (groupe)
            ArrayList<Etudiant> listeEtudiants = GroupeDAO.getUsersByIdGroupe(idGroupeInt);
            // récupèration du contexte de l'application
            ServletContext context = getServletContext();
                    
            context.setAttribute("listeetudiants", listeEtudiants);
            context.setAttribute("nomgroupe", groupeConcerne.getNom());
            context.setAttribute("annee", groupeConcerne.getAnnee());
            context.setAttribute("filiere", groupeConcerne.getFiliere());
            context.setAttribute("idGroupe", idGroupe);
            context.setAttribute("isAdminUser", statut);
           
            
            request.getRequestDispatcher("trombiListeEtudiants.jsp").forward(request, response);
                    
        } 
        
        catch (SQLException e) 
        {	
            response.setContentType("text/html");
            PrintWriter out = response.getWriter();
            out.println("<p><strong> Erreur avec la base. </strong>");
            out.println("<p> <a href= \"./authentification.jsp \">Page d'authentification</a> </p>");
            out.println("Cause de l'erreur : " + e.getCause());
		
        }
    }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {       
            processRequest(request, response);          
    }

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {        
            processRequest(request, response);        
    }    
    @Override
    public String getServletInfo() {
        return "Short description";
    }// </editor-fold>
}


